package com.wdm.sms.service.huawei;

import com.wdm.sms.commonutil.utils.r.R;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;


/**
 * @author: wudaiming
 * @date: 2023/3/21
 * @version: 1.0
 * @Description 华为云OBS服务接口
 */

public interface HweiYunOBSService {

    /**
     * @Description 删除文件
     * @author wuhuiju
     * @date 2021/12/21 17:02
     * @param: objectKey 文件名
     * @return: boolean 执行结果
     */
    boolean delete(String objectKey);

    /**
     * @Description 批量删除文件
     * @author wuhuiju
     * @date 2021/12/21 17:02
     * @param: objectKeys 文件名集合
     * @return: boolean 执行结果
     */
    boolean delete(List<String> objectKeys);

    /**
     * @Description 上传文件
     * @author wuhuiju
     * @date 2021/12/21 17:03
     * @param: uploadFile 上传文件
     * @param: objectKey 文件名称
     * @return: java.lang.String url访问路径
     */
    String fileUpload(MultipartFile uploadFile, String objectKey);

    /**
     * @Description 文件下载
     * @author wuhuiju
     * @date 2021/12/21 17:04
     * @param: objectKey
     * @return: java.io.InputStream
     */
    InputStream fileDownload(String objectKey);

    R previewFile(HttpServletRequest request, HttpServletResponse response, String objectKey)  throws IOException;
}

